for _ in range(int(input())):
n = int(input())
a = list(map(int, input().split()))
s = 3
count = 0
for i in range(n):
for j in range(a[i] - i - 2, n, a[i]):
if i >= j:continue
if a[i] * a[j] == i + j + 2:
count += 1
print(count)
#include<bits/stdc++.h>
using namespace std;
#define all(x) (x).begin(), (x).end()
#define print(a) for(auto it:a) std::cout<<it<<" ";
#define nl "\n"
typedef long long ll;
typedef long double ld;
void solve() {
int n;cin >> n;
vector<pair<ll,ll>> a(n);
for(int i=0;i<n;i++) {
int x;cin >> x;
a[i] = {x,i+1};
}
sort(all(a));
ll count = 0;
for(int i=0;i<n-1;i++) {
for(int j=i+1;j<n;j++) {
if(a[i].first*a[j].first == a[i].second + a[j].second) count ++;
else if(a[i].first*a[j].first >= 2*n) break;
else continue;
}
}
cout << count << nl;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
ll t;cin >> t;
while(t--) {
solve();
}
return 0;
}
1632C - Strange Test | 673A - Bear and Game |
276A - Lunch Rush | 1205A - Almost Equal |
1020B - Badge | 1353A - Most Unstable Array |
770A - New Password | 1646B - Quality vs Quantity |
80A - Panoramix's Prediction | 1354B - Ternary String |
122B - Lucky Substring | 266B - Queue at the School |
1490A - Dense Array | 1650B - DIV + MOD |
1549B - Gregor and the Pawn Game | 553A - Kyoya and Colored Balls |
1364A - XXXXX | 1499B - Binary Removals |
1569C - Jury Meeting | 108A - Palindromic Times |
46A - Ball Game | 114A - Cifera |
776A - A Serial Killer | 25B - Phone numbers |
1633C - Kill the Monster | 1611A - Make Even |
1030B - Vasya and Cornfield | 1631A - Min Max Swap |
1296B - Food Buying | 133A - HQ9+ |